Many organizations have plural sites where databases are maintained, each with a different operating system and database structure. A continuing demand exists to join together such multiple databases so as to enable transparent access to data contained therein. "Transparent" implies that an application program at a specific site is able to access data from all connected databases, without being aware of the origin of the data, nor of any incompatibilities which might exist between a local database and any of the plurality of coupled remote databases. It is to be understood that the terms "remote" and "local" not only refer to physical locations, but also to databases that are located at a single site, but are controlled by different operating systems or database protocols.
In order to provide a transparent interface for heterogeneous databases, the prior art has employed one database as an interface and has enabled that interface, under control of a database management system (DBMS), to access data from other databases in accordance with data entries contained in an interface table. In such prior art systems, the interface table was hard-coded (i.e., not available for alteration by the user) and provided information which enabled the interface database to access and handle data from other coupled databases. Because the interface table was hard-coded, any change to a coupled heterogeneous database (e.g., datatype format, function availability, data semantics, etc.) created a compatibility problem that could only be overcome by revision of the hard-coded table or by a software revision which would override the hard-coded version. The former solution is expensive and the latter solution adds to the processing time of the database system and is therefore unsatisfactory. The compatibility problem becomes even more severe when a new database is added to the system that is unknown to the interface database.
A number of prior art patents teach methods for enabling transparent access to heterogeneous databases. For instance, U.S. Pat. No. 5,560,005 to Hoover et al. describes an object-based, relational, distributed database system wherein each of a plurality of remotely located user computers includes a heterogeneous data structure. Data at such locations are "homogenized" by mapping predetermined data field items stored in the heterogeneous databases to corresponding object attributes associated with a predetermined instance of an object. The system stores location information and status information relating to the homogenized data in a centralized "object broker" processor for object management. This action facilitates location and retrieval of data items from the remote heterogeneous databases.
U.S. Pat. No. 5,604,892 to Nuttall et al. describes an alterable information model that is usable in accordance with various electric power system arrangements. An object-oriented information model provides a generic power system model that may be applied to any of several applications. Physical equipments are represented as objects, with attributes that can be verified and relations including connectivity, grouping and location.
U.S. Pat. No. 5,600,831 to Levy et al. describes techniques for optimizing queries from a number of different databases that are accessible via a network. A query plan is generated which includes subplans for querying databases which include the requested information. When a subplan is executed in one of the databases, the database returns not only the information which results from the execution of the subplan but also source and constraint information about the data in the database. The source and constraint information is then used to optimize the query plan by pruning redundant subplans. In one embodiment, a domain model is used which includes a world view of the data, a set of descriptions of the databases and a set of descriptions of how to access the data. The information in the domain model is used to formulate the query plan.
While the above prior art indicates the use of tables to enable transparent access between heterogeneous databases, there is a need for improved methods and systems which accommodate newly added databases and altered database functions, datatypes, etc.
Accordingly, it is an object of this invention to provide a heterogeneous database system with a method and apparatus that enables ready accommodation of changes to existing database structures.
It is another object of this invention to provide an improved heterogeneous database system, wherein additional databases, previously unknown, can be added to the heterogeneous system and transparency retained.